package com.yiren.dbaa.module.practice_set.site.contract;

import com.yiren.backstage.currency.entity.SiteEntity;
import com.yiren.dbaa.currency.api.CommonCallBack;
import com.yiren.dbaa.module.practice_set.site.bean.CompanyBean;

import java.util.List;

/**
 * @author lwb
 * @date : 2022/10/21 14:28
 * @description:  新建考场规则契约
 */
public interface AddSiteRuleInfoContract {

    interface Presenter {

        /**
         * 加载合伙人已公开考规
         * @param view
         */
        void loadSiteRuleFromServer(View view);


        /**
         * 加载所有考车公司
         */
        void loadAllCompany(View view);


        /**
         * 加载城市对应的考场名称
         */
        void loadCitySiteName(String city, View view);

        /**
         * 查询最新基础模板数据信息
         */
        void loadNewBaseRule(CommonCallBack callBack);

        /**
         * 新建考规
         * @param serviceSites 已公开考规集合
         * @param siteRulesource 规则数据来源对象
         * @param newSite 新建考规对象
         */
        void saveSiteRule(List<SiteEntity> serviceSites,SiteEntity siteRulesource,SiteEntity newSite);


    }

    interface Model {
        /**
         * 获取所有考车公司
         */
        void getAllCompany(CommonCallBack callBack);

        /**
         * 获取城市对应的考场名称
         * @param callBack
         * @param city
         */
        void getCitySiteName(String city,CommonCallBack callBack);




    }

    interface View {
        /**
         * 显示考规来源下拉列表
         */
        void  showSiteRuleSource(List<SiteEntity> siteSourceList);

        /**
         * 显示考场名字下拉框
         */
        void  showSiteName(List<SiteEntity> citySiteList);

        /**
         * 显示考车公司下拉框
         */
        void  showCompany(List<CompanyBean> companyList);
    }


}
